package live.ifox.util;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class DateUtil {

    // new Date() 会自动调用 System.currentTimeMillis();

    /**
     * 获取现在时间
     *
     * @return 返回字符串格式 yyyy-MM-dd HH:mm:ss
     */
    public static String getDateTimeString() {
        // SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        // return formatter.format(new Date());
        return SimpleDateFormat.getDateTimeInstance().format(System.currentTimeMillis());
    }

    /**
     * 获取现在时间
     *
     * @return 返回短时间字符串格式yyyy-MM-dd
     */
    public static String getDateString() {
        // SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
        // return formatter.format(new Date());
        return SimpleDateFormat.getDateInstance().format(System.currentTimeMillis());
    }

    /**
     * 获取时间 小时:分;秒 HH:mm:ss
     *
     * @return 返回短时间字符串格式HH:mm:ss
     */
    public static String getTimeString() {
        // SimpleDateFormat formatter = new SimpleDateFormat("HH:mm:ss");
        // return formatter.format(new Date());
        return SimpleDateFormat.getTimeInstance().format(System.currentTimeMillis());
    }

    /**
     * 将长时间格式字符串转换为时间 yyyy-MM-dd HH:mm:ss
     *
     * @param strDate
     * @return
     */
    public static Date parseDateTimeString(String strDate) throws ParseException {
        // SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        // return formatter.parse(strDate);
        return SimpleDateFormat.getDateTimeInstance().parse(strDate);
    }

    /**
     * 将短时间格式时间转换为字符串 yyyy-MM-dd
     *
     * @param strDate
     * @return
     */
    public static Date parseDateString(String strDate) throws ParseException {
        // SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
        // return formatter.parse(strDate);
        return SimpleDateFormat.getDateInstance().parse(strDate);
    }

    /**
     * 得到现在时间
     *
     * @return
     */
    public static Date getNow() {
        return new Date();
    }
}
